To improve availability, some computer systems have a redundant configuration including an active system and a standby system. A wide variety of redundant systems have been proposed and are being studied in a variety of ways.
For example, an information processing system monitoring apparatus has been proposed that monitors normality of the active system according to a watchdog timer scheme. The information processing system monitoring apparatus has measure of monitoring normality of the standby system according to the watchdog timer scheme. The information processing system monitoring apparatus further has measure of monitoring whether the standby system is activated within a predetermined time after an instruction is issued to activate the standby system in response to a failure of the active system.
Furthermore, a highly available computer system has been proposed that includes a plurality of backup servers and effectively copies data into the backup servers to improve fault tolerance as described below.
The highly available computer system includes three or more servers (first to fourth servers, for example) interconnected via a network. Of the three or more servers, a first server that is given the highest priority and serves as a master communicates with slave servers (that is, the second to fourth servers) and regularly performs a search operation to discriminate between servers in which a failure has occurred and servers in which no failure has occurred. If a client modifies data in a file in the master server, the master server copies the modified data into a server in which no failure has occurred (the third and fourth servers, for example) found in the search operation.
On the other hand, the third server regularly performs an operation to search for a possible master in descending order of priority from the first server, to which the highest priority is given at that time. If no master is found, and the priority given to the third server itself is the highest among the servers in which no failure has occurred, the third server becomes a new master. The fourth server operates the same as the third server.
Besides, a server deployment method has been proposed for dynamically deploying servers by taking not only the performance requirements but also the reliability into consideration, for example.
More specifically, the operational state of a group of reserve servers is monitored by a server management unit and stored in a server management information storage unit as server management information. Once demand prediction data for each system to be managed is acquired, a deployment period grasping unit grasps, from the demand prediction data, the dynamic deployment period in which deployment of a reserve server is required in each system.
A deployment-candidate server selecting unit selects a deployment-candidate server from among the reserve servers excluding those that are likely to fail in the dynamic deployment period based on the dynamic deployment period and the server management information. In addition, a deployment server determining unit selects a deployment-candidate server that may meet deployment requirements required in the dynamic deployment period and determines the selected deployment-candidate server as a deployment server.
Furthermore, a highly reliable method has been also proposed that is intended to achieve high reliability and high availability in a multi-core processor environment.
More specifically, in a system comprising a plurality of multi-core processors, a table for managing the processors and the cores of the processors is provided. In generation of a virtual server, cores from different processors are used to form a virtual server. The number of processors may be changed depending on the number of cores of the processors. If a failure sign is detected in a processor, an execution schedule of the virtual mechanism is not passed to the processor in which the failure sign is detected.
In a system comprising a plurality of multi-core processors, operating cores from a plurality of different processors are allocated to processing of a process or a thread of the operating system. In a system comprising a plurality of multi-core processors, operating cores from a plurality of different processors are allocated to the operating system.
Known literatures include Japanese Patent Laid-Open No. 62-49446, Japanese Patent Laid-Open No. 2001-43105, International Publication No. WO2008/041302 and Japanese Patent Laid-Open No. 2008-152594, for example.